package cn.com.yiqi.wsc.entity.lottery;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class LotteryActivityExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Integer offset;

    public LotteryActivityExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return offset;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("n_id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("n_id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("n_id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("n_id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("n_id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("n_id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("n_id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("n_id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("n_id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("n_id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("n_id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("n_id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("n_type is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("n_type is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Byte value) {
            addCriterion("n_type =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Byte value) {
            addCriterion("n_type <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Byte value) {
            addCriterion("n_type >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Byte value) {
            addCriterion("n_type >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Byte value) {
            addCriterion("n_type <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Byte value) {
            addCriterion("n_type <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Byte> values) {
            addCriterion("n_type in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Byte> values) {
            addCriterion("n_type not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Byte value1, Byte value2) {
            addCriterion("n_type between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Byte value1, Byte value2) {
            addCriterion("n_type not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("v_name is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("v_name is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("v_name =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("v_name <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("v_name >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("v_name >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("v_name <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("v_name <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("v_name like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("v_name not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("v_name in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("v_name not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("v_name between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("v_name not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andStartTimeIsNull() {
            addCriterion("d_start_time is null");
            return (Criteria) this;
        }

        public Criteria andStartTimeIsNotNull() {
            addCriterion("d_start_time is not null");
            return (Criteria) this;
        }

        public Criteria andStartTimeEqualTo(Date value) {
            addCriterion("d_start_time =", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeNotEqualTo(Date value) {
            addCriterion("d_start_time <>", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeGreaterThan(Date value) {
            addCriterion("d_start_time >", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("d_start_time >=", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeLessThan(Date value) {
            addCriterion("d_start_time <", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeLessThanOrEqualTo(Date value) {
            addCriterion("d_start_time <=", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeIn(List<Date> values) {
            addCriterion("d_start_time in", values, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeNotIn(List<Date> values) {
            addCriterion("d_start_time not in", values, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeBetween(Date value1, Date value2) {
            addCriterion("d_start_time between", value1, value2, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeNotBetween(Date value1, Date value2) {
            addCriterion("d_start_time not between", value1, value2, "startTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeIsNull() {
            addCriterion("d_end_time is null");
            return (Criteria) this;
        }

        public Criteria andEndTimeIsNotNull() {
            addCriterion("d_end_time is not null");
            return (Criteria) this;
        }

        public Criteria andEndTimeEqualTo(Date value) {
            addCriterion("d_end_time =", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeNotEqualTo(Date value) {
            addCriterion("d_end_time <>", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeGreaterThan(Date value) {
            addCriterion("d_end_time >", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("d_end_time >=", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeLessThan(Date value) {
            addCriterion("d_end_time <", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeLessThanOrEqualTo(Date value) {
            addCriterion("d_end_time <=", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeIn(List<Date> values) {
            addCriterion("d_end_time in", values, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeNotIn(List<Date> values) {
            addCriterion("d_end_time not in", values, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeBetween(Date value1, Date value2) {
            addCriterion("d_end_time between", value1, value2, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeNotBetween(Date value1, Date value2) {
            addCriterion("d_end_time not between", value1, value2, "endTime");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("n_status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("n_status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Byte value) {
            addCriterion("n_status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Byte value) {
            addCriterion("n_status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Byte value) {
            addCriterion("n_status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Byte value) {
            addCriterion("n_status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Byte value) {
            addCriterion("n_status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Byte value) {
            addCriterion("n_status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Byte> values) {
            addCriterion("n_status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Byte> values) {
            addCriterion("n_status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Byte value1, Byte value2) {
            addCriterion("n_status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Byte value1, Byte value2) {
            addCriterion("n_status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdIsNull() {
            addCriterion("n_limit_rank_id is null");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdIsNotNull() {
            addCriterion("n_limit_rank_id is not null");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdEqualTo(Integer value) {
            addCriterion("n_limit_rank_id =", value, "limitRankId");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdNotEqualTo(Integer value) {
            addCriterion("n_limit_rank_id <>", value, "limitRankId");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdGreaterThan(Integer value) {
            addCriterion("n_limit_rank_id >", value, "limitRankId");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("n_limit_rank_id >=", value, "limitRankId");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdLessThan(Integer value) {
            addCriterion("n_limit_rank_id <", value, "limitRankId");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdLessThanOrEqualTo(Integer value) {
            addCriterion("n_limit_rank_id <=", value, "limitRankId");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdIn(List<Integer> values) {
            addCriterion("n_limit_rank_id in", values, "limitRankId");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdNotIn(List<Integer> values) {
            addCriterion("n_limit_rank_id not in", values, "limitRankId");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdBetween(Integer value1, Integer value2) {
            addCriterion("n_limit_rank_id between", value1, value2, "limitRankId");
            return (Criteria) this;
        }

        public Criteria andLimitRankIdNotBetween(Integer value1, Integer value2) {
            addCriterion("n_limit_rank_id not between", value1, value2, "limitRankId");
            return (Criteria) this;
        }

        public Criteria andFreeTimeIsNull() {
            addCriterion("n_free_time is null");
            return (Criteria) this;
        }

        public Criteria andFreeTimeIsNotNull() {
            addCriterion("n_free_time is not null");
            return (Criteria) this;
        }

        public Criteria andFreeTimeEqualTo(Integer value) {
            addCriterion("n_free_time =", value, "freeTime");
            return (Criteria) this;
        }

        public Criteria andFreeTimeNotEqualTo(Integer value) {
            addCriterion("n_free_time <>", value, "freeTime");
            return (Criteria) this;
        }

        public Criteria andFreeTimeGreaterThan(Integer value) {
            addCriterion("n_free_time >", value, "freeTime");
            return (Criteria) this;
        }

        public Criteria andFreeTimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("n_free_time >=", value, "freeTime");
            return (Criteria) this;
        }

        public Criteria andFreeTimeLessThan(Integer value) {
            addCriterion("n_free_time <", value, "freeTime");
            return (Criteria) this;
        }

        public Criteria andFreeTimeLessThanOrEqualTo(Integer value) {
            addCriterion("n_free_time <=", value, "freeTime");
            return (Criteria) this;
        }

        public Criteria andFreeTimeIn(List<Integer> values) {
            addCriterion("n_free_time in", values, "freeTime");
            return (Criteria) this;
        }

        public Criteria andFreeTimeNotIn(List<Integer> values) {
            addCriterion("n_free_time not in", values, "freeTime");
            return (Criteria) this;
        }

        public Criteria andFreeTimeBetween(Integer value1, Integer value2) {
            addCriterion("n_free_time between", value1, value2, "freeTime");
            return (Criteria) this;
        }

        public Criteria andFreeTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("n_free_time not between", value1, value2, "freeTime");
            return (Criteria) this;
        }

        public Criteria andPointBuyIsNull() {
            addCriterion("v_point_buy is null");
            return (Criteria) this;
        }

        public Criteria andPointBuyIsNotNull() {
            addCriterion("v_point_buy is not null");
            return (Criteria) this;
        }

        public Criteria andPointBuyEqualTo(String value) {
            addCriterion("v_point_buy =", value, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyNotEqualTo(String value) {
            addCriterion("v_point_buy <>", value, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyGreaterThan(String value) {
            addCriterion("v_point_buy >", value, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyGreaterThanOrEqualTo(String value) {
            addCriterion("v_point_buy >=", value, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyLessThan(String value) {
            addCriterion("v_point_buy <", value, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyLessThanOrEqualTo(String value) {
            addCriterion("v_point_buy <=", value, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyLike(String value) {
            addCriterion("v_point_buy like", value, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyNotLike(String value) {
            addCriterion("v_point_buy not like", value, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyIn(List<String> values) {
            addCriterion("v_point_buy in", values, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyNotIn(List<String> values) {
            addCriterion("v_point_buy not in", values, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyBetween(String value1, String value2) {
            addCriterion("v_point_buy between", value1, value2, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andPointBuyNotBetween(String value1, String value2) {
            addCriterion("v_point_buy not between", value1, value2, "pointBuy");
            return (Criteria) this;
        }

        public Criteria andSendPointIsNull() {
            addCriterion("n_send_point is null");
            return (Criteria) this;
        }

        public Criteria andSendPointIsNotNull() {
            addCriterion("n_send_point is not null");
            return (Criteria) this;
        }

        public Criteria andSendPointEqualTo(Integer value) {
            addCriterion("n_send_point =", value, "sendPoint");
            return (Criteria) this;
        }

        public Criteria andSendPointNotEqualTo(Integer value) {
            addCriterion("n_send_point <>", value, "sendPoint");
            return (Criteria) this;
        }

        public Criteria andSendPointGreaterThan(Integer value) {
            addCriterion("n_send_point >", value, "sendPoint");
            return (Criteria) this;
        }

        public Criteria andSendPointGreaterThanOrEqualTo(Integer value) {
            addCriterion("n_send_point >=", value, "sendPoint");
            return (Criteria) this;
        }

        public Criteria andSendPointLessThan(Integer value) {
            addCriterion("n_send_point <", value, "sendPoint");
            return (Criteria) this;
        }

        public Criteria andSendPointLessThanOrEqualTo(Integer value) {
            addCriterion("n_send_point <=", value, "sendPoint");
            return (Criteria) this;
        }

        public Criteria andSendPointIn(List<Integer> values) {
            addCriterion("n_send_point in", values, "sendPoint");
            return (Criteria) this;
        }

        public Criteria andSendPointNotIn(List<Integer> values) {
            addCriterion("n_send_point not in", values, "sendPoint");
            return (Criteria) this;
        }

        public Criteria andSendPointBetween(Integer value1, Integer value2) {
            addCriterion("n_send_point between", value1, value2, "sendPoint");
            return (Criteria) this;
        }

        public Criteria andSendPointNotBetween(Integer value1, Integer value2) {
            addCriterion("n_send_point not between", value1, value2, "sendPoint");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeIsNull() {
            addCriterion("n_send_point_type is null");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeIsNotNull() {
            addCriterion("n_send_point_type is not null");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeEqualTo(Byte value) {
            addCriterion("n_send_point_type =", value, "sendPointType");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeNotEqualTo(Byte value) {
            addCriterion("n_send_point_type <>", value, "sendPointType");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeGreaterThan(Byte value) {
            addCriterion("n_send_point_type >", value, "sendPointType");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeGreaterThanOrEqualTo(Byte value) {
            addCriterion("n_send_point_type >=", value, "sendPointType");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeLessThan(Byte value) {
            addCriterion("n_send_point_type <", value, "sendPointType");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeLessThanOrEqualTo(Byte value) {
            addCriterion("n_send_point_type <=", value, "sendPointType");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeIn(List<Byte> values) {
            addCriterion("n_send_point_type in", values, "sendPointType");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeNotIn(List<Byte> values) {
            addCriterion("n_send_point_type not in", values, "sendPointType");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeBetween(Byte value1, Byte value2) {
            addCriterion("n_send_point_type between", value1, value2, "sendPointType");
            return (Criteria) this;
        }

        public Criteria andSendPointTypeNotBetween(Byte value1, Byte value2) {
            addCriterion("n_send_point_type not between", value1, value2, "sendPointType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeIsNull() {
            addCriterion("n_join_time_type is null");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeIsNotNull() {
            addCriterion("n_join_time_type is not null");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeEqualTo(Byte value) {
            addCriterion("n_join_time_type =", value, "joinTimeType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeNotEqualTo(Byte value) {
            addCriterion("n_join_time_type <>", value, "joinTimeType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeGreaterThan(Byte value) {
            addCriterion("n_join_time_type >", value, "joinTimeType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeGreaterThanOrEqualTo(Byte value) {
            addCriterion("n_join_time_type >=", value, "joinTimeType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeLessThan(Byte value) {
            addCriterion("n_join_time_type <", value, "joinTimeType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeLessThanOrEqualTo(Byte value) {
            addCriterion("n_join_time_type <=", value, "joinTimeType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeIn(List<Byte> values) {
            addCriterion("n_join_time_type in", values, "joinTimeType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeNotIn(List<Byte> values) {
            addCriterion("n_join_time_type not in", values, "joinTimeType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeBetween(Byte value1, Byte value2) {
            addCriterion("n_join_time_type between", value1, value2, "joinTimeType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeTypeNotBetween(Byte value1, Byte value2) {
            addCriterion("n_join_time_type not between", value1, value2, "joinTimeType");
            return (Criteria) this;
        }

        public Criteria andJoinTimeIsNull() {
            addCriterion("n_join_time is null");
            return (Criteria) this;
        }

        public Criteria andJoinTimeIsNotNull() {
            addCriterion("n_join_time is not null");
            return (Criteria) this;
        }

        public Criteria andJoinTimeEqualTo(Integer value) {
            addCriterion("n_join_time =", value, "joinTime");
            return (Criteria) this;
        }

        public Criteria andJoinTimeNotEqualTo(Integer value) {
            addCriterion("n_join_time <>", value, "joinTime");
            return (Criteria) this;
        }

        public Criteria andJoinTimeGreaterThan(Integer value) {
            addCriterion("n_join_time >", value, "joinTime");
            return (Criteria) this;
        }

        public Criteria andJoinTimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("n_join_time >=", value, "joinTime");
            return (Criteria) this;
        }

        public Criteria andJoinTimeLessThan(Integer value) {
            addCriterion("n_join_time <", value, "joinTime");
            return (Criteria) this;
        }

        public Criteria andJoinTimeLessThanOrEqualTo(Integer value) {
            addCriterion("n_join_time <=", value, "joinTime");
            return (Criteria) this;
        }

        public Criteria andJoinTimeIn(List<Integer> values) {
            addCriterion("n_join_time in", values, "joinTime");
            return (Criteria) this;
        }

        public Criteria andJoinTimeNotIn(List<Integer> values) {
            addCriterion("n_join_time not in", values, "joinTime");
            return (Criteria) this;
        }

        public Criteria andJoinTimeBetween(Integer value1, Integer value2) {
            addCriterion("n_join_time between", value1, value2, "joinTime");
            return (Criteria) this;
        }

        public Criteria andJoinTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("n_join_time not between", value1, value2, "joinTime");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxIsNull() {
            addCriterion("n_must_focus_wx is null");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxIsNotNull() {
            addCriterion("n_must_focus_wx is not null");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxEqualTo(Byte value) {
            addCriterion("n_must_focus_wx =", value, "mustFocusWx");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxNotEqualTo(Byte value) {
            addCriterion("n_must_focus_wx <>", value, "mustFocusWx");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxGreaterThan(Byte value) {
            addCriterion("n_must_focus_wx >", value, "mustFocusWx");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxGreaterThanOrEqualTo(Byte value) {
            addCriterion("n_must_focus_wx >=", value, "mustFocusWx");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxLessThan(Byte value) {
            addCriterion("n_must_focus_wx <", value, "mustFocusWx");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxLessThanOrEqualTo(Byte value) {
            addCriterion("n_must_focus_wx <=", value, "mustFocusWx");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxIn(List<Byte> values) {
            addCriterion("n_must_focus_wx in", values, "mustFocusWx");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxNotIn(List<Byte> values) {
            addCriterion("n_must_focus_wx not in", values, "mustFocusWx");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxBetween(Byte value1, Byte value2) {
            addCriterion("n_must_focus_wx between", value1, value2, "mustFocusWx");
            return (Criteria) this;
        }

        public Criteria andMustFocusWxNotBetween(Byte value1, Byte value2) {
            addCriterion("n_must_focus_wx not between", value1, value2, "mustFocusWx");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountIsNull() {
            addCriterion("n_total_draw_count is null");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountIsNotNull() {
            addCriterion("n_total_draw_count is not null");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountEqualTo(Integer value) {
            addCriterion("n_total_draw_count =", value, "totalDrawCount");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountNotEqualTo(Integer value) {
            addCriterion("n_total_draw_count <>", value, "totalDrawCount");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountGreaterThan(Integer value) {
            addCriterion("n_total_draw_count >", value, "totalDrawCount");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("n_total_draw_count >=", value, "totalDrawCount");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountLessThan(Integer value) {
            addCriterion("n_total_draw_count <", value, "totalDrawCount");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountLessThanOrEqualTo(Integer value) {
            addCriterion("n_total_draw_count <=", value, "totalDrawCount");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountIn(List<Integer> values) {
            addCriterion("n_total_draw_count in", values, "totalDrawCount");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountNotIn(List<Integer> values) {
            addCriterion("n_total_draw_count not in", values, "totalDrawCount");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountBetween(Integer value1, Integer value2) {
            addCriterion("n_total_draw_count between", value1, value2, "totalDrawCount");
            return (Criteria) this;
        }

        public Criteria andTotalDrawCountNotBetween(Integer value1, Integer value2) {
            addCriterion("n_total_draw_count not between", value1, value2, "totalDrawCount");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesIsNull() {
            addCriterion("v_lottery_rules is null");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesIsNotNull() {
            addCriterion("v_lottery_rules is not null");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesEqualTo(String value) {
            addCriterion("v_lottery_rules =", value, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesNotEqualTo(String value) {
            addCriterion("v_lottery_rules <>", value, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesGreaterThan(String value) {
            addCriterion("v_lottery_rules >", value, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesGreaterThanOrEqualTo(String value) {
            addCriterion("v_lottery_rules >=", value, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesLessThan(String value) {
            addCriterion("v_lottery_rules <", value, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesLessThanOrEqualTo(String value) {
            addCriterion("v_lottery_rules <=", value, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesLike(String value) {
            addCriterion("v_lottery_rules like", value, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesNotLike(String value) {
            addCriterion("v_lottery_rules not like", value, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesIn(List<String> values) {
            addCriterion("v_lottery_rules in", values, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesNotIn(List<String> values) {
            addCriterion("v_lottery_rules not in", values, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesBetween(String value1, String value2) {
            addCriterion("v_lottery_rules between", value1, value2, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andLotteryRulesNotBetween(String value1, String value2) {
            addCriterion("v_lottery_rules not between", value1, value2, "lotteryRules");
            return (Criteria) this;
        }

        public Criteria andUnwinDescIsNull() {
            addCriterion("v_unwin_desc is null");
            return (Criteria) this;
        }

        public Criteria andUnwinDescIsNotNull() {
            addCriterion("v_unwin_desc is not null");
            return (Criteria) this;
        }

        public Criteria andUnwinDescEqualTo(String value) {
            addCriterion("v_unwin_desc =", value, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescNotEqualTo(String value) {
            addCriterion("v_unwin_desc <>", value, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescGreaterThan(String value) {
            addCriterion("v_unwin_desc >", value, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescGreaterThanOrEqualTo(String value) {
            addCriterion("v_unwin_desc >=", value, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescLessThan(String value) {
            addCriterion("v_unwin_desc <", value, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescLessThanOrEqualTo(String value) {
            addCriterion("v_unwin_desc <=", value, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescLike(String value) {
            addCriterion("v_unwin_desc like", value, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescNotLike(String value) {
            addCriterion("v_unwin_desc not like", value, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescIn(List<String> values) {
            addCriterion("v_unwin_desc in", values, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescNotIn(List<String> values) {
            addCriterion("v_unwin_desc not in", values, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescBetween(String value1, String value2) {
            addCriterion("v_unwin_desc between", value1, value2, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andUnwinDescNotBetween(String value1, String value2) {
            addCriterion("v_unwin_desc not between", value1, value2, "unwinDesc");
            return (Criteria) this;
        }

        public Criteria andJoinTotalIsNull() {
            addCriterion("n_join_total is null");
            return (Criteria) this;
        }

        public Criteria andJoinTotalIsNotNull() {
            addCriterion("n_join_total is not null");
            return (Criteria) this;
        }

        public Criteria andJoinTotalEqualTo(Integer value) {
            addCriterion("n_join_total =", value, "joinTotal");
            return (Criteria) this;
        }

        public Criteria andJoinTotalNotEqualTo(Integer value) {
            addCriterion("n_join_total <>", value, "joinTotal");
            return (Criteria) this;
        }

        public Criteria andJoinTotalGreaterThan(Integer value) {
            addCriterion("n_join_total >", value, "joinTotal");
            return (Criteria) this;
        }

        public Criteria andJoinTotalGreaterThanOrEqualTo(Integer value) {
            addCriterion("n_join_total >=", value, "joinTotal");
            return (Criteria) this;
        }

        public Criteria andJoinTotalLessThan(Integer value) {
            addCriterion("n_join_total <", value, "joinTotal");
            return (Criteria) this;
        }

        public Criteria andJoinTotalLessThanOrEqualTo(Integer value) {
            addCriterion("n_join_total <=", value, "joinTotal");
            return (Criteria) this;
        }

        public Criteria andJoinTotalIn(List<Integer> values) {
            addCriterion("n_join_total in", values, "joinTotal");
            return (Criteria) this;
        }

        public Criteria andJoinTotalNotIn(List<Integer> values) {
            addCriterion("n_join_total not in", values, "joinTotal");
            return (Criteria) this;
        }

        public Criteria andJoinTotalBetween(Integer value1, Integer value2) {
            addCriterion("n_join_total between", value1, value2, "joinTotal");
            return (Criteria) this;
        }

        public Criteria andJoinTotalNotBetween(Integer value1, Integer value2) {
            addCriterion("n_join_total not between", value1, value2, "joinTotal");
            return (Criteria) this;
        }

        public Criteria andWinTotalIsNull() {
            addCriterion("n_win_total is null");
            return (Criteria) this;
        }

        public Criteria andWinTotalIsNotNull() {
            addCriterion("n_win_total is not null");
            return (Criteria) this;
        }

        public Criteria andWinTotalEqualTo(Integer value) {
            addCriterion("n_win_total =", value, "winTotal");
            return (Criteria) this;
        }

        public Criteria andWinTotalNotEqualTo(Integer value) {
            addCriterion("n_win_total <>", value, "winTotal");
            return (Criteria) this;
        }

        public Criteria andWinTotalGreaterThan(Integer value) {
            addCriterion("n_win_total >", value, "winTotal");
            return (Criteria) this;
        }

        public Criteria andWinTotalGreaterThanOrEqualTo(Integer value) {
            addCriterion("n_win_total >=", value, "winTotal");
            return (Criteria) this;
        }

        public Criteria andWinTotalLessThan(Integer value) {
            addCriterion("n_win_total <", value, "winTotal");
            return (Criteria) this;
        }

        public Criteria andWinTotalLessThanOrEqualTo(Integer value) {
            addCriterion("n_win_total <=", value, "winTotal");
            return (Criteria) this;
        }

        public Criteria andWinTotalIn(List<Integer> values) {
            addCriterion("n_win_total in", values, "winTotal");
            return (Criteria) this;
        }

        public Criteria andWinTotalNotIn(List<Integer> values) {
            addCriterion("n_win_total not in", values, "winTotal");
            return (Criteria) this;
        }

        public Criteria andWinTotalBetween(Integer value1, Integer value2) {
            addCriterion("n_win_total between", value1, value2, "winTotal");
            return (Criteria) this;
        }

        public Criteria andWinTotalNotBetween(Integer value1, Integer value2) {
            addCriterion("n_win_total not between", value1, value2, "winTotal");
            return (Criteria) this;
        }

        public Criteria andInsertTimeIsNull() {
            addCriterion("d_insert_time is null");
            return (Criteria) this;
        }

        public Criteria andInsertTimeIsNotNull() {
            addCriterion("d_insert_time is not null");
            return (Criteria) this;
        }

        public Criteria andInsertTimeEqualTo(Date value) {
            addCriterion("d_insert_time =", value, "insertTime");
            return (Criteria) this;
        }

        public Criteria andInsertTimeNotEqualTo(Date value) {
            addCriterion("d_insert_time <>", value, "insertTime");
            return (Criteria) this;
        }

        public Criteria andInsertTimeGreaterThan(Date value) {
            addCriterion("d_insert_time >", value, "insertTime");
            return (Criteria) this;
        }

        public Criteria andInsertTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("d_insert_time >=", value, "insertTime");
            return (Criteria) this;
        }

        public Criteria andInsertTimeLessThan(Date value) {
            addCriterion("d_insert_time <", value, "insertTime");
            return (Criteria) this;
        }

        public Criteria andInsertTimeLessThanOrEqualTo(Date value) {
            addCriterion("d_insert_time <=", value, "insertTime");
            return (Criteria) this;
        }

        public Criteria andInsertTimeIn(List<Date> values) {
            addCriterion("d_insert_time in", values, "insertTime");
            return (Criteria) this;
        }

        public Criteria andInsertTimeNotIn(List<Date> values) {
            addCriterion("d_insert_time not in", values, "insertTime");
            return (Criteria) this;
        }

        public Criteria andInsertTimeBetween(Date value1, Date value2) {
            addCriterion("d_insert_time between", value1, value2, "insertTime");
            return (Criteria) this;
        }

        public Criteria andInsertTimeNotBetween(Date value1, Date value2) {
            addCriterion("d_insert_time not between", value1, value2, "insertTime");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdIsNull() {
            addCriterion("n_insert_user_id is null");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdIsNotNull() {
            addCriterion("n_insert_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdEqualTo(Integer value) {
            addCriterion("n_insert_user_id =", value, "insertUserId");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdNotEqualTo(Integer value) {
            addCriterion("n_insert_user_id <>", value, "insertUserId");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdGreaterThan(Integer value) {
            addCriterion("n_insert_user_id >", value, "insertUserId");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("n_insert_user_id >=", value, "insertUserId");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdLessThan(Integer value) {
            addCriterion("n_insert_user_id <", value, "insertUserId");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("n_insert_user_id <=", value, "insertUserId");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdIn(List<Integer> values) {
            addCriterion("n_insert_user_id in", values, "insertUserId");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdNotIn(List<Integer> values) {
            addCriterion("n_insert_user_id not in", values, "insertUserId");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdBetween(Integer value1, Integer value2) {
            addCriterion("n_insert_user_id between", value1, value2, "insertUserId");
            return (Criteria) this;
        }

        public Criteria andInsertUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("n_insert_user_id not between", value1, value2, "insertUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("d_update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("d_update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("d_update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("d_update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("d_update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("d_update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("d_update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("d_update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("d_update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("d_update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("d_update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("d_update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNull() {
            addCriterion("n_update_user_id is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNotNull() {
            addCriterion("n_update_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdEqualTo(Integer value) {
            addCriterion("n_update_user_id =", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotEqualTo(Integer value) {
            addCriterion("n_update_user_id <>", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThan(Integer value) {
            addCriterion("n_update_user_id >", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("n_update_user_id >=", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThan(Integer value) {
            addCriterion("n_update_user_id <", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("n_update_user_id <=", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIn(List<Integer> values) {
            addCriterion("n_update_user_id in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotIn(List<Integer> values) {
            addCriterion("n_update_user_id not in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdBetween(Integer value1, Integer value2) {
            addCriterion("n_update_user_id between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("n_update_user_id not between", value1, value2, "updateUserId");
            return (Criteria) this;
        }
    }

    /**
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}